To prevent the problems described in section Problems In Test Environments, processes need to be in place for managing the setup
and maintenance of the environments. These management processes are:
-
Configuration management
-
Change management
-
Release management.
Configuration management
The aim of configuration management is to be clear of the configuration of the various environments at all times. In
addition to the test object itself, configuration is understood to mean the set of components as summed up in the defi
nition of test environment (hardware and software, interfaces, environment data, and management tools). This involves
not only the components themselves, but their version as well and in particular. The CMDB ( Configuration Management
Data Base) contains the data for these components. This process ensured that only authorised changes are implemented in
the environments. Using the CMDB, the differences between the environments can be established quite easily.
It is important for the tester to be involved in this process, for the following reasons:
-
To know in which configuration the defects occur. This configuration must be reported with the defect
-
To know how the versions of the testware must be built. There is a close relationship between the testware and the
version of the configurations. It is important to copy the configuration structure and naming and numbering methods
for testware management.
Change management
The aim of change management is to implement all individual changes about which stakeholders are in agreement
in the various environments in a controlled manner. The implementation should not result in new defects. Changes may be
delivered as a result of defects, hardware modifications, the implementation of newly developed software, or data file
changes. The change management process looks at the total impact of a change. An up-todate CMDB (see configuration
management) is necessary to determine the impact in a specific environment. It is important for the tester to be
involved in this process, for the following reasons:
-
Changes in requirements result in changes in the test basis. It is therefore important for the tester to know which
parts of the test object change and what the changes involve, so that the test cases and test scripts can be
adapted if necessary.
-
Changes often must be tested. For each change it is necessary to determine whether it has to be tested and whether
it can be tested. The testability of a change depends, among other things, on the quality of the change
description. This can be taken into account when a tester is involved in the change description at an early stage.
Changes often result in test work and must therefore be scheduled.
Release management
The aim of release management is the implementation of one or more combined and approved (via change management)
changes from one environment to the other. Release management covers all of the components that are part of a
change.
Version management (the right version in the right environment) is an important part of release management. It is
important for the tester to be involved in the release management process, for the following reasons:
-
To know which versions of the test scripts are necessary. As a tester, it is important to know which versions of
the various components are installed. In practice, this is most important for the version of the software (which
usually is the test object). Depending on the version, specific requirements are built or not, and therefore
specific test scripts are necessary or not.
-
To know which release is sent to the client. The test occurs on a specific release and the release advice is
therefore linked to it.
|